Operações de Acréscimo e Subtração em Datas e Horas


Para adicionar ou subtrair dias, meses ou anos em uma data, primeiramente a data já deve estar no formato LocalDate. 


import java.time.LocalDate;

public class App {
    public static void main(String[] args) {
        // Obtém a data atual, ou você poderia criar a data a partir de uma string ou pelo construtor padrão
        LocalDate dataAtual = LocalDate.now();  

        // LocalDate dataAtual = LocalDate.of(2024, 12, 23); 

        // Adiciona 10 dias
        dataAtual = dataAtual.plusDays(10);  
        System.out.println(dataAtual);  

        // Adiciona 3 meses
        dataAtual = dataAtual.plusMonths(3);
        System.out.println(dataAtual);  

        // Adiciona 2 anos
        dataAtual = dataAtual.plusYears(2); 
        System.out.println(dataAtual);  
    }
}

Para a subtração basta utilizar os seguintes métodos:

  • minusDays(dias): Subtrai o número especificado de dias.
  • minusMonths(meses): Subtrai o número especificado de meses.
  • minusYears(anos): Subtrai o número especificado de anos.

Para as mesmas operações em uma Hora basta:

import java.time.LocalTime;

public class App {
    public static void main(String[] args) {
        LocalTime horaAtual = LocalTime.now();

        // Adiciona 5 horas
        horaAtual = horaAtual.plusHours(5);  
        System.out.println("Hora após adicionar 5 horas: " + horaAtual);
    }
}
  • plusHours(horas): Adiciona o número especificado de horas à hora atual.
  • plusMinutes(minutos): Adiciona o número especificado de minutos à hora atual.
  • plusSeconds(segundos): Adiciona o número especificado de segundos à hora atual.
  • minusHours(horas): Subtrai o número especificado de horas da hora atual.
  • minusMinutes(minutos): Subtrai o número especificado de minutos da hora atual.
  • minusSeconds(segundos): Subtrai o número especificado de segundos da hora atual.